 package org.springframework.remoting.service;
 
 import org.springframework.remoting.caucho.BurlapProxyFactoryBean;
import org.springframework.remoting.caucho.BurlapServiceExporter;
import org.springframework.remoting.caucho.HessianProxyFactoryBean;
import org.springframework.remoting.caucho.HessianServiceExporter;
import org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean;
import org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter;
import org.springframework.remoting.rmi.RmiProxyFactoryBean;
import org.springframework.remoting.rmi.RmiServiceExporter;
 
 
 public enum ServiceType
 {
   HTTP(HttpInvokerServiceExporter.class, HttpInvokerProxyFactoryBean.class), 
   
 
 
   BURLAP(BurlapServiceExporter.class, BurlapProxyFactoryBean.class), 
   
 
 
   HESSIAN(HessianServiceExporter.class, HessianProxyFactoryBean.class), 
   
 
 
   RMI(RmiServiceExporter.class, RmiProxyFactoryBean.class);
   
 
   private Class<?> serviceExporter;
   private Class<?> proxyFactoryBean;
   
   private ServiceType(Class<?> serviceExporterName, Class<?> proxyFactoryBeanName)
   {
     this.serviceExporter = serviceExporterName;
     this.proxyFactoryBean = proxyFactoryBeanName;
   }
   
   public Class<?> getServiceExporter() {
     return this.serviceExporter;
   }
   
 
   public Class<?> getProxyFactoryBean()
   {
     return this.proxyFactoryBean;
   }
 }